/*
 * Scheduler.h
 *
 *  Created on: Aug 26, 2011
 *      Author: ryan
 */

#ifndef SCHEDULER_H_
#define SCHEDULER_H_

#include "Communication.h"
#include "MapReducer.h"

class Scheduler {
public:
	static void setCPUMapReducer(MapReducer *c);
	static void setGPUMapReducer(MapReducer *g);
	static void setDevide(double v);
	static void submit(int taskNum, int argc, char *argv[]);

private:
	static MapReducer *cpu, *gpu;
	static int task_start, task_length;
	static double devide;
	static void globalSchduling(int task[], int num);
	static void localSchduling();
};

#endif /* SCHEDULER_H_ */

